<?php

/*
 * 路由器,用来存储信息,指路用的,存储路由信息
 * and open the template in the editor.
 */
class Router
{
    private $ctrl='';
    private $action='';
    private $params=array();
    public function __construct() {
       
            $this->transformation($_GET);
            
            
       
       
    }
    //将提交过来的参数分离出控制器,执行方法,传入参数
    private function transformation($input=  array())
    {
        $key=  array_keys($input);
       
        $default_ctroll="";
        $default_action="";
        
         if(DEFAULTCT!='')
         {
                $default_ctroll=DEFAULTCT;
         }else{
            $default_ctroll='basecontroll';
         }
         if(DEFAULTAC!=''){
                $default_action=DEFAULTAC;
         }else{
            $default_action='defaultmethod';
         }
        
        
        if(isset($key)&&!empty($key))
        {
            $tmp=array();
            $tmp=preg_split("/\//", $key[0]);
            $this->ctrl=empty($tmp[0])?$default_ctroll:$tmp[0];
            $this->action=empty($tmp[1])?$default_action:$tmp[1];
            array_shift($tmp);
            array_shift($tmp);
            $this->params=$tmp;
            if(!empty($_POST))
            {
                $this->params= array_merge($this->params,$_POST);
            }
        }
        else
        {
           
            $this->ctrl=$default_ctroll;
            
            $this->action=$default_action;
            
        }
    }
    //获得控制器
    public function getControll()
    {
        return $this->ctrl;
    }
    //获得执行方法
    public function getAction()
    {
        return $this->action;
    }
    //获得传入执行方法的参数
    public function getParams()
    {
        return $this->params;
    }
}
?>
